-
Notifications
You must be signed in to change notification settings - Fork 2.8k
feat(web): add blog section with initial posts #11127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Implements MKT-66 through MKT-74: Content Layer (MKT-67): - Markdown files in src/content/blog with Zod-validated frontmatter - Pacific Time scheduling evaluated at request-time (no deploy needed) - gray-matter for parsing, react-markdown + remark-gfm for rendering Blog Pages (MKT-68, MKT-69): - Index page at /blog with dynamic SSR - Post page at /blog/[slug] with dynamic SSR - Breadcrumb navigation and prev/next post navigation SEO (MKT-70): - Full OpenGraph and Twitter card metadata - Schema.org JSON-LD (Article, BreadcrumbList, CollectionPage) - Canonical URLs pointing to roocode.com/blog Analytics (MKT-74): - PostHog blog_post_viewed and blog_index_viewed events - Referrer tracking for attribution Navigation (MKT-72): - Updated nav-bar and footer to link to internal /blog - Blog link in Resources dropdown Sitemap (MKT-71): - Dynamic blog paths with PT scheduling check Initial Posts: - PRDs Are Becoming Artifacts of the Past (Jan 12) - Code Review Got Faster, Not Easier (Jan 19) - Vibe Coders Build and Rebuild (Jan 26) - Async Agents Change the Speed vs Quality Calculus (Feb 2)
No issues found. The latest commit was a CI retry with no code changes.
Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues. |
|
🚀 Preview deployed! Your changes have been deployed to Vercel: Preview URL: https://roo-code-website-3lbno5tr4-roo-code.vercel.app This preview will be updated automatically when you push new commits to this PR. |
|
@roomote fix the failing test |
Fixed the failing test. The |
The HistoryPreview component was refactored to use useGroupedTasks and TaskGroupItem instead of rendering TaskItem directly. This updates the test file to properly mock the new dependencies: - Mock useGroupedTasks hook to provide grouped task data - Mock TaskGroupItem instead of TaskItem - Update assertions to test for task groups instead of individual tasks
- Add reading time display to blog posts - Create BlogPostCTA component with 4 variants (default, extension, cloud, enterprise) - Add zebra striping to tables in blog posts - Add CTA to blog landing and paginated pages - Remove 'Posted' prefix from dates - Update blog description: 'How teams use agents to iterate, review, and ship PRs with proof' - Add BlogPostList and BlogPagination components - Add 100+ new blog posts from content pipeline
|
Generated with ❤️ by ellipsis.dev |
…r Hours, Roo Cast) - Add BlogSource type to types.ts - Export BlogSource from blog index - Add SourceBadge component to BlogPostList with colored badges - Each podcast has distinct color: blue (Office Hours), purple (After Hours), emerald (Roo Cast)
|
Generated with ❤️ by ellipsis.dev |
…s, After Hours) - Add add-blog-sources.ts script to build title→source mapping - Updated 122 blog posts with correct podcast sources - Sources: Roo Cast (52), Office Hours (62), After Hours (8)
|
Generated with ❤️ by ellipsis.dev |
- Add source field to Zod validation schema - Source badges use same styling as tag badges (rounded, greyscale) - Badges display on /blog landing page for Office Hours, After Hours, Roo Cast
|
Generated with ❤️ by ellipsis.dev |
- Change @type from Article to BlogPosting (more specific) - Add image property using OG image URL - Add wordCount for AEO optimization
|
Generated with ❤️ by ellipsis.dev |
|
Generated with ❤️ by ellipsis.dev |
This issue was already resolved in a previous commit. View fix commit - The |
…ovin' to 'Tovan' - Changed 22 instances of 'Series A team' to 'Series A - C team' across 20 blog posts - Changed 12 instances of 'Tovin' to 'Tovan' across 4 blog posts This broadens the messaging to better represent teams that Roo Code serves (Series A through C).
|
Generated with ❤️ by ellipsis.dev |
|
@roomote look into the failing tests and fix them |
Investigated the CI failures. All tests pass locally:
The CI failure was due to a timeout ( |
|
Generated with ❤️ by ellipsis.dev |
No issues found. The latest commit was a CI retry with no code changes.
Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues. |
Implements MKT-66 through MKT-74 for the blog section on roocode.com/blog.
Summary
Adds a complete blog section with:
Initial Posts (4 total)
Implementation Details
Content Layer (MKT-67):
src/content/blog/with Zod-validated frontmatterBlog Pages (MKT-68, MKT-69):
force-dynamic,runtime: nodejs)SEO (MKT-70):
Analytics (MKT-74):
blog_post_viewedandblog_index_viewedeventsNavigation (MKT-72):
Sitemap (MKT-71):
Testing
Files Changed
Important
Adds a dynamic blog section with initial posts, SEO, analytics, and navigation integration to the website.
/blogand/blog/[slug]pages inpage.tsxand[slug]/page.tsx.src/content/blog/with Zod-validated frontmatter.nav-bar.tsxandfooter.tsxto include blog links.next-sitemap.config.cjs.This description was created by
for 85736c8. You can customize this summary. It will automatically update as commits are pushed.